// pages/personage/personage.js
import {getTime} from "../../utils/time"
import {editProfile,getuserprofile} from '../../api/user'
import store from '../../store/index';
import {createStoreBindings} from 'mobx-miniprogram-bindings'
import Toast from '../../miniprogram_npm/@vant/weapp/toast/toast'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 时间选择器数据
    currentDate: new Date().getTime(),
    minDate: new Date("1900").getTime(),
    maxDate: new Date().getTime(),
    formatter(type, value) {
      if (type === 'year') {
        return `${value}年`;
      }
      if (type === 'month') {
        return `${value}月`;
      }
      return value;
    },
    // 性别
    columns: ['男', '女'],
    // 弹出层开关
    show:[],
    // input数据
    inputValue:""
  
  },
  // 后退
back(){
  wx.navigateBack({
     delta: 1
   });
 },
  // 时间选择器
  onInput(event) {
    this.setData({
      currentDate: event.detail,
    });
  },
  //选择器完成
 async onconfirm(e){
  const id = e.currentTarget.dataset.id
if(id===2){
  this.setUserBirthday(getTime(e.detail));
  await editProfile({birthday:getTime(e.detail)})
}else if(id===1){
  this.setUserGender(e.detail.index);
  await editProfile({gender:e.detail.index})
}else if(id===0){
  this.setUserName(this.data.inputValue)  
  await editProfile({name:this.data.inputValue})
}
Toast.success({
  duration: 1000,
  message: '更新成功'
});
this.setData({ [`show[${id}]`]: false });
  },


// 打开弹出层
showPopup(e) {
 const id = e.currentTarget.dataset.id
  this.setData({ [`show[${id}]`]: true });
},
// 关闭弹出层
onClose(e) {
  const id = e.currentTarget.dataset.id
  this.setData({ [`show[${id}]`]: false });
},
// 数据双向绑定
onInput(e){
  this.setData({
    inputValue:e.detail
  })
  // console.log(store.user.name);
},

// 获取用户信息
async getuserprofile(){
const res = await getuserprofile(this.user)
// console.log(res.data);
this.setUser(res.data)
},
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    
    createStoreBindings(this,{
      store:store,
      fields:['user'],
      actions:['setUser','setUserBirthday','setUserGender','setUserName']
    })
    this.getuserprofile()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})